package day4_1;
import java.io.*;
import java.text.*;
import java.util.*;


public class _1 {
    Scanner in = new Scanner(System.in);

    public static void main(String[] args) {
        _1 x = new _1();
//        x.a();
        try {
            x.g();
        } catch (Exception e) {
            e.printStackTrace();
        }
//        x.e();
    }


    //输入一个文本文件名，将其删除。
    public void a() {
        Scanner in = new Scanner(System.in);
        String a = in.next();
        File file = new File(a);
        System.out.println(file.exists());
        boolean x = file.delete();
        if (x) {
            System.out.println("删除成功");
        } else {
            System.out.println("删除失败");
        }
    }

    //    实现文件剪切的功能，输入一个源文件名，和目标文件夹，剪切后文件名保持不变。（提示：用renameTo）
    public void v() {
        File f = new File("C:\\Users\\董\\Documents\\java笔记\\变量的分类.java");
        File f1 = new File("C:\\Users\\董\\Documents\\java笔记11\\变量的分类.java");
        System.out.println(f.renameTo(f1));
    }

    //    输入一个文件名，输出其中的byte内容
    public void c() throws Exception {
        System.out.print("输入文件名:");
        String d = in.next();
        File f = new File(d);
        InputStream a = null;
        a = new FileInputStream(f);
        byte[] s = new byte[a.available()];
        int length = 0;
        length = a.read(s);
        System.out.println(new String(s, 0, length));
        a.close();
    }

    //    输入一个目录，输出其中所有的文件名
    public void d() {
        String a=in.next();
        File f = new File(a);
        File[] fa = f.listFiles();
        for (File file : fa) {
            System.out.println(file);
        }
    }

//    输出当前电脑中所有的盘符

    public void e(){
        File[] a = File.listRoots();
        for (int i = 0; i < a.length; i++) {
            System.out.println(a[i]);
        }
    }

//    实现文件复制的功能，通过命令行参数，输入一个源文件名，和目标文件夹，复制后文件名保持不变。比如输入 d:\mydoc\1.jpg, 和f:\img,则复制 d:\mydoc\1.jpg 到 f:\img 目录下
    public void f() throws IOException {
        System.out.print("输入文件名:");
        String d = in.next();
        System.out.println("复制到的位置:");
        String d1=in.next();
        FileInputStream a = new FileInputStream(d);
        FileOutputStream a1 = new FileOutputStream(d1);
//        byte[] ar=new byte[a.available()];
//        int length=a.read(ar);
//        new String(ar,0,length);
//        a1.write(ar);
//        a.close();
        int p=0;
        while ((p=a.read())!=-1){
            a1.write(p);
        }
        a.close();
        a1.close();
    }
/*通过控制台输入字符，如果输入的是quit,则退出,否则继续输入;把输入的字符写入文件保存,每输入一次换行，并在每行之前加上写入的时间，用hh:mm:ss的格式,时间后面加上一个空格
 类似
 11:34:21 hello
 11:34:27 how do you do?*/
    public void g() throws IOException{
        Date date = new Date();
        SimpleDateFormat s = new SimpleDateFormat("kk:mm:ss ");
//        File file = new File("C:\\Users\\董\\Documents\\java笔记\\大王\\测试.TXT");
        FileOutputStream a = new FileOutputStream("C:\\Users\\董\\Documents\\java笔记\\大王\\测试.TXT");
        while (true){

            String x=in.next();
            if (x.equals("quit")){
                return;
            }else {
                x=s.format(date)+x+"\n";
                byte[] l=x.getBytes();
                int length=l.length;
                new String(l,0,length);
                a.write(l);
                System.out.println(x);
            }
        }
    }
}

